/* 
 * File:   Operacion.cpp
 * Author: max
 * 
 * Created on May 31, 2013, 1:00 AM
 */

#include <iostream>
#include <sstream>
#include "client_Operacion.h"
#include "common_ProtocoloConstantes.h"
#include "common_MutexScopeLocker.h"
#include "common_TokenFactory.h"

using namespace std;
using namespace TP;
using namespace TP::Comunicacion;
using namespace TP::Operaciones;

Operacion::Operacion(const uint32_t &pId){
    _id = pId;
    _estado = false;
}

Operacion::~Operacion() {}

uint32_t& Operacion::getId (){
    return _id;
}

 bool Operacion::finalizada(){
    MutexScopeLocker _locker (_estadoMutex);
    return _estado;
}

bool Operacion::setFinalizada(bool pEstado){
    MutexScopeLocker _locker (_estadoMutex);
    _estado = pEstado;
}

bool Operacion::asociado(vector<string> &pRespuesta){
    
    return TokenFactory::Parse(pRespuesta[0]) == getId();
    
}